In recent years, devices that deal with digital image information aim to transmit and accumulate information with high efficiency in such circumstances, and are based on a format of an MPEG (Moving Picture Experts Group), or the like for compressing information using orthogonal transform such as discrete cosine transform and motion compensation using redundancy that is unique for image information have been widely spread to both sides of a distribution of chain of information such as a broadcasting station and the reception of information by general households.
Particularly, MPEG2 (ISO (International Organization for Standardization)/IEC (International Electrotechnical Commission) 13818-2) is defined as a general-purpose image encoding format, and is widely used at present in an extensive range of applications for professionals and consumers as a standard that is inclusively applied to both of interlacing scanning images and sequential scanning images, and standard resolution images and high-definition images. By using the MPEG2 compression format, code quantity (bit rate) of 4 to 8 Mbps is allocated to an interlacing scanning image with a standard resolution having pixels of, for example, 720×480, a code quantity of 18 to 22 Mbps is allocated to an interlacing scanning image with high resolution having pixels of 1920×1088, and thereby a high compression rate and satisfactory image quality can be realized.
The MPEG2 mainly targets encoding with high image quality that is appropriate for broadcasting, but is not suitable for code quantity (bit rate) that is lower than that of MPEG1, in other words, it fails to satisfy an encoding format of a high compression rate. As mobile terminals have been supplied, a need for such an encoding format has been considered to increase, and in response to the need, an MPEG4 encoding format has been standardized. With regard to an image encoding format, the standard was approved as an international standard with the number ISO/IEC 14496-2 in December 1998.
Furthermore, in recent years, standardization of H.26L (ITU-T (International Telecommunication Union Telecommunication Standardization Sector) Q6/16 VCEG (Video Coding Expert Group)) has proceeded for the initial purpose of image encoding for video conferencing. H.26L is known for realizing even higher encoding efficiency, whereas it requires a larger amount of arithmetic operation due to encoding and decoding thereof than existing encoding formats such as MPEG2 or MPEG4. In addition, at present, as a part of an action for MPEG4, standardization to realize even higher encoding efficiency by incorporating a function that is not supported in H.26L into the H.26L as the base has been performed as a Joint Model of Enhanced-Compression Video Coding.
In the schedule of the standardization, the standardization was internationally attained in the name of H.264 and MPEG-4 Part 10 (Advanced Video Coding, hereinafter referred to as AVC) in March 2003.
Furthermore, as an extension of the format, FRExt (Fidelity Range Extension) that includes an encoding tool for business use in, such as RGB, 4:2:2: or 4:4:4 sampling format, 8×8DCT (Discrete Cosine Transform) defined in MPEG-2, and a quantization matrix has been standardized in February 2005, and accordingly, the standardization came to serve as a vehicle used in a wide range of applications such as Blu-Ray Discs as an encoding format that can satisfactorily express even film noise included in videos using AVC.
However, in recent years, the need for encoding with an even higher compression rate such as the desire to compress an image having about 4000×2000 pixels, which is four times larger than a high-vision image, or to distribute a high-vision image in an environment with a limited transmission capacity such as the Internet have soared. For this reason, VCEG (Video Coding Expert Group) under the ITU-T continues discussions about improvements in encoding efficiency.
Meanwhile, at present, for the purpose of further improving encoding more efficiency than AVC, the ITU-T and the JCTVC (Joint Collaboration Team—Video Coding) that is a standardization group established by both the ISO and IEC promotes standardization of an encoding format which is called HEVC (High Efficiency Video Coding) (for example, refer to Non-Patent Literature 1).
In the HEVC format, a coding unit (CU (Coding Unit)) is defined as a unit of processing that is the same as a macroblock in AVC. A CU does not have the size fixed to be 16×16 pixels different from the macroblock of AVC, but the size is designated in image compression information in respective sequences.
A CU is hierarchically constituted by an LCU (Largest Coding Unit) which is the maximum unit and by an SCU (Smallest Coding Unit) which is the minimum unit. In other words, it can be considered that, broadly, an LCU corresponds to a macroblock of AVC and a CU in a lower hierarchy than the LCU (a CU which is smaller than the LCU) corresponds to a sub macroblock of AVC.
Meanwhile, in order to shorten a processing time of encoding in AVC (in other words, to reduce a processing time by improving a processing speed), for example, there is a method of dividing an encoding process into a plurality of pipe processes in which processes are executed in parallel (hereinafter, referred to as parallelization). For example, in order to parallelize an encoding process for one picture, the one picture may be divided into a plurality of slices. In AVC, division of a picture into slices as above can be performed in units of macroblocks. In other words, one slice is designed to include one or a plurality of macroblocks. For this reason, in syntax, a so-called onion ring structure in which an upper profile completely includes a lower profile is formed.
Accordingly, since a code stream has a hierarchical structure of VCL (Video Coding Layer)-NAL (Network Abstraction Layer), an improvement in random access or error resistance can be realized.
Meanwhile, another method for independently providing an entropy slice that is a slice only for lossless encoding of a slice (a so-called slice in AVC, or the like) for a process of intra-prediction or encoding a motion vector other than lossless encoding has been proposed (for example, refer to Non-Patent Literature 2).
In this case, a lossless encoding process such as CABAC, or CAVLC is not allowed to perform over an entropy slice, but such a process of intra-prediction or encoding a motion vector other than lossless encoding may be performed over an entropy slice.